iT邦幫忙

2023 iThome 鐵人賽

DAY 29
0
自我挑戰組

ChatGPT!啟動!系列 第 29

Day-29 OpenAI API 實作 part 4

  • 分享至 

  • xImage
  •  

0. 前言

接下來請打開Day-27寫的colab筆記本,並以它為基礎開始修改。



1. color generater

1.1. prompt

  • 首先將原本打"hello"的地方換成變數prompt
    https://ithelp.ithome.com.tw/upload/images/20231005/20162090U49D5fEcg3.png
  • 接著在上方新增一個程式碼框定義prompt,這邊有兩個小重點
    1. prompt小秘訣:給範例格式
    2. f 及{text}的用法有興趣自己查查看F-string
prompt = f"""
  根據以下文字產生2到6個顏色

  輸出格式:python列表,列表的值為16進制的顏色編碼

  ===
  google
  ===
  ["#4285F4", "#34A853", "FBBC05", "#EA4335"]

  ===
  facebook
  ===
  ["#4267B2", "#3B5998"]

  ===
  {text}
  ===
"""

1.2. color函數

  • 定義一個函式名為color
  • 將prompt及res丟進來
  • 在res裡面加上條件max_tokens = 100
  • 最後補上return res["choices"][0]["text"]
    https://ithelp.ithome.com.tw/upload/images/20231005/20162090OBaEmZ5L9R.png

1.3. 轉python list

因為前面拿到的回覆是一段文字,必須轉成python list才能套用進後續的程式碼。

  • 先import json套件
  • 在color函式中補上colors = json.loads(res["choices"][0]["text"])其中colors是一個list變數
  • 最後return後面改成colors這個list變數
def color(text):
  prompt = f"""
    根據以下文字產生2到6個顏色

    輸出格式:python列表,列表的值為16進制的顏色編碼

    ===
    google
    ===
    ["#4285F4", "#34A853", "FBBC05", "#EA4335"]

    ===
    facebook
    ===
    ["#4267B2", "#3B5998"]

    ===
    {text}
    ===
  """

  res = openai.Completion.create(
      model = "text-davinci-003",
      prompt = prompt,
      max_tokens = 100
  )

  colors = json.loads(res["choices"][0]["text"])

  return colors


2. 結語

明天就是最後一天了!我會做最後的gradio連接,然後打個感想之類的,就醬掰掰。


【OpenAI】1小時初學者教學-製作你的AI app


HackMD頁面

上一篇
Day-28 OpenAI API 實作 part 3
下一篇
Day-30 OpenAI API 實作 final part
系列文
ChatGPT!啟動!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言